package com.ehl.utb.cloud.test.bean;

import lombok.Data;

/**
 * WebSocket 客户端的 的会话信息
 * <p>
 * 文件名称：{@link SessionInfo}
 * <p>
 * <b>
 * Creation Time: 2022/5/31
 *
 * @author lyw
 * @version 1.0.0.0
 * @since 1.0.0.0
 **/
@Data
public class SessionInfo {

    /**
     * 客户端的IP地址
     */
    private String clientIpAddr;

    /**
     * 客户端的端口
     */
    private int clientPort;


    /**
     * 服务端的IP地址
     */
    private String serverIpAddr;

    /**
     * 服务端的端口
     */
    private int serverPort;


    /**
     * 获取SessionInfo 信息
     *
     * @param request 请求消息
     * @param redisNamePrefix  redis的命名前缀
     * @return redis的key
     */
    public static String getRedisKey(String clientIpAddr,int clientPort, String redisNamePrefix) {

        return String.format("%s:%s:%d", redisNamePrefix, clientIpAddr, clientPort);
    }

}
